<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"            
      xmlns:jb="http://java.sun.com/jsf/composite/componentes"
      xmlns:p="http://primefaces.org/ui">

    <ui:composition template="/pages/core/plantilla/plantillaPrincipal.xhtml">
        <ui:define name="contenido">             
            <h:form onsubmit="return checkSubmit();"  id="frmPrincipal">
                <p:panel id="pnlPrincipal" header="#{i18n['panel.titulo.empresa']} / #{sessionMBean.titulo} #{empresaCobranzaMBean.dto.id}" style="#{applicationMBean.estiloTitulo}">
                    <h:panelGrid id="pgFormDto" columns="10" cellpadding="4">
                        <h:outputLabel for="itRuc" styleClass="label" value="#{i18n['cobranza.empresa.ruc']}"/>
                        <p:inputText id="itRuc" label="#{i18n['cobranza.empresa.ruc']}"
                                     value="#{empresaCobranzaMBean.dto.ruc}"  readonly="#{sessionMBean.accion == applicationMBean.ver}"
                                     required="true" size="60" styleClass="txtCampoObligatorio">
                            <f:validateLength maximum="100" minimum="1"/>
                        </p:inputText>

                        <h:outputLabel for="itRazonSocial" styleClass="label" value="#{i18n['cobranza.empresa.razon.social']}"/>
                        <p:inputText id="itRazonSocial" label="#{i18n['cobranza.empresa.razon.social']}"
                                     value="#{empresaCobranzaMBean.dto.razonSocial}"  readonly="#{sessionMBean.accion == applicationMBean.ver}"
                                     required="true" size="60" styleClass="txtCampoObligatorio">
                            <f:validateLength maximum="100" minimum="1"/>
                        </p:inputText>

                        <h:outputLabel for="itFilaArchivoCliente" styleClass="label" value="#{i18n['cobranza.empresa.fila.archivo.cliente']}"/>
                        <p:inputText id="itFilaArchivoCliente" label="#{i18n['cobranza.empresa.fila.archivo.cliente']}"
                                     value="#{empresaCobranzaMBean.dto.filaArchivoCliente}"  readonly="#{sessionMBean.accion == applicationMBean.ver}"
                                     required="true" size="10" styleClass="txtCampoObligatorio"
                                     onkeypress="return fn_validaTecla('entero',this)" maxlength="2">
                            <f:validateLength maximum="2" minimum="1"/>
                        </p:inputText>

                        <h:outputLabel for="itFilaArchivoPago" styleClass="label" value="#{i18n['cobranza.empresa.fila.archivo.pago']}"/>
                        <p:inputText id="itFilaArchivoPago" label="#{i18n['cobranza.empresa.fila.archivo.pago']}"
                                     value="#{empresaCobranzaMBean.dto.filaArchivoPago}"  readonly="#{sessionMBean.accion == applicationMBean.ver}"
                                     required="true" size="10" styleClass="txtCampoObligatorio"
                                     onkeypress="return fn_validaTecla('entero',this)" maxlength="2">
                            <f:validateLength maximum="2" minimum="1"/>
                        </p:inputText>
                    </h:panelGrid>

                    <h:outputLabel value="#{i18n['general.label.campos.auditoria']}" styleClass="subTitulo" rendered="#{empresaCobranzaMBean.dto.id!=null}"/>
                    <p:separator rendered="#{empresaCobranzaMBean.dto.id!=null}"/>
                    <h:panelGrid id="pgCamposAuditoria" columns="6" cellspacing="10" rendered="#{empresaCobranzaMBean.dto.id!=null}">
                        <h:outputLabel styleClass="label" value="#{i18n['general.label.usuario.creacion']}"/>
                        <h:outputLabel styleClass="txtCampo" value="#{empresaCobranzaMBean.dto.usuarioCreacionDto.descripcion}"/>
                        <h:outputLabel styleClass="label" value="#{i18n['general.label.fecha.creacion']}"/>
                        <h:outputLabel styleClass="txtCampo" value="#{empresaCobranzaMBean.dto.fechaCreacion}">
                            <f:convertDateTime pattern="#{applicationMBean.formatoFechaHoraSegundos}"  timeZone="#{applicationMBean.timeZone}"/>
                        </h:outputLabel>
                        <h:outputLabel styleClass="label" value="#{i18n['general.label.terminal.creacion']}"/>
                        <h:outputLabel styleClass="txtCampo" value="#{empresaCobranzaMBean.dto.terminalCreacion}"/>
                        <h:outputLabel styleClass="label" value="#{i18n['general.label.usuario.modificacion']}"/>
                        <h:outputLabel styleClass="txtCampo" value="#{empresaCobranzaMBean.dto.usuarioDto.descripcion}"/>
                        <h:outputLabel styleClass="label" value="#{i18n['general.label.fecha.modificacion']}"/>
                        <h:outputLabel styleClass="txtCampo" value="#{empresaCobranzaMBean.dto.fecha}">
                            <f:convertDateTime pattern="#{applicationMBean.formatoFechaHoraSegundos}"  timeZone="#{applicationMBean.timeZone}"/>
                        </h:outputLabel>
                        <h:outputLabel styleClass="label" value="#{i18n['general.label.terminal.modificacion']}"/>
                        <h:outputLabel styleClass="txtCampo" value="#{empresaCobranzaMBean.dto.terminal}"/>
                    </h:panelGrid>

                    <f:facet name="footer">
                        <p:commandButton title="#{i18n['general.button.guardar.tip']}" accesskey="#{applicationMBean.keyGuardar}" ajax="false"
                                         icon="ui-icon ui-icon-disk" rendered="#{sessionMBean.accion != applicationMBean.ver}"
                                         onclick="return confirm('#{i18n.general_mensaje_confirmacion}');"
                                         value="#{i18n['general.button.guardar']}"
                                         style="#{applicationMBean.estilosBtnGuardar}"
                                         action="#{empresaCobranzaMBean.guardar}">
                        </p:commandButton>

                        <p:commandButton title="#{i18n['general.button.atras.tip']}" accesskey="#{applicationMBean.keyRetroceder}" ajax="false"
                                         icon="ui-icon ui-icon-arrowreturnthick-1-w" immediate="true"
                                         style="#{applicationMBean.estilosBtnRetroceder}"
                                         value="#{i18n['general.button.atras']}"
                                         action="#{empresaCobranzaMBean.retroceder}">
                        </p:commandButton>
                    </f:facet>
                </p:panel>

                <p:panel id="pnlPrincipalDeta" header="#{i18n['panel.titulo.empresa.deta']}" style="#{applicationMBean.estiloTitulo}" rendered="#{empresaCobranzaMBean.dto.id != null}">
                    <h:panelGrid>
                        <h:panelGrid id="pgFormDtoDeta" columns="13" cellpadding="4">
                            <p:commandButton title="#{i18n['empresa.cobranza.nuevo.detalle']}"
                                             icon="ui-icon ui-icon-plus"
                                             style="#{applicationMBean.estilosBtnNuevoDetalle}"
                                             value="#{i18n['empresa.cobranza.nuevo.detalle']}"
                                             rendered="#{sessionMBean.accion != applicationMBean.ver}" ajax="true"
                                             oncomplete="carDialogDeta.show()"
                                             update=":frmPopupDeta:pgFormDtoDeta"
                                             action="#{empresaCobranzaMBean.nuevoDetalle}">
                            </p:commandButton>
                        </h:panelGrid>

                        <p:tabView id="tabPrincipalDeta" orientation="top" style="#{applicationMBean.estiloTitulo}" rendered="#{empresaCobranzaMBean.dto.id != null}">
                            <p:tab id="tabArchCliente" title="#{i18n['empresa.archivo.cliente']}">                   
                                <h:panelGrid id="pgCliente" columns="1">
                                    <p:dataTable id="tblCliente" value="#{empresaCobranzaMBean.listaCliente}" var="dto" widgetVar="widTable"
                                                 rowKey="#{dto.id}"
                                                 emptyMessage="#{i18n['form.general.mensaje.no.registros']}" styleClass="estiloPanel">
                                        <p:column style="text-align:center;">
                                            <h:panelGrid columns="3" cellspacing="7" styleClass="estiloPanelGrid">
                                                <p:column style="text-align:center;">
                                                    <p:commandButton icon="ui-icon  ui-icon-close" title="#{i18n['general.button.eliminar']}" 
                                                                     rendered="#{sessionMBean.accion != applicationMBean.ver}" 
                                                                     ajax="true"
                                                                     update=":frmPrincipal:pnlPrincipalDeta"
                                                                     action="#{empresaCobranzaMBean.eliminarDetalle}">
                                                        <f:setPropertyActionListener value="#{dto}" target="#{empresaCobranzaMBean.detaDto}" /> 
                                                    </p:commandButton>
                                                </p:column > 
                                                <p:column style="text-align:center;" >
                                                    <p:commandButton icon="ui-icon ui-icon-search" title="#{i18n['general.button.ver.tip']}"
                                                                     actionListener="#{empresaCobranzaMBean.verDetalle}" ajax="true"
                                                                     oncomplete="carDialogDeta.show()"
                                                                     update=":frmPopupDeta:pgFormDtoDeta">
                                                        <f:setPropertyActionListener value="#{dto}" target="#{empresaCobranzaMBean.detaDto}"/>
                                                    </p:commandButton>
                                                </p:column>
                                                <p:column style="text-align:center;" >
                                                    <p:commandButton id="btnEditar1" icon="ui-icon ui-icon-pencil" title="#{i18n['general.button.editar.tip']}" 
                                                                     rendered="#{sessionMBean.accion != applicationMBean.ver}"
                                                                     actionListener="#{empresaCobranzaMBean.editarDetalle}" ajax="true"
                                                                     oncomplete="carDialogDeta.show()"
                                                                     update=":frmPopupDeta:pgFormDtoDeta">
                                                        <f:setPropertyActionListener value="#{dto}" target="#{empresaCobranzaMBean.detaDto}"/>
                                                    </p:commandButton>
                                                </p:column>
                                            </h:panelGrid>
                                        </p:column>
                                        <p:column headerText="#{i18n['general.label.id']}" styleClass="general">
                                            <h:outputText value="#{dto.id}" styleClass="general"/>
                                        </p:column>
                                        <p:column headerText="#{i18n['empresa.campo']}" styleClass="general">
                                            <h:outputText value="#{dto.campoDto.nombre}" styleClass="general"/>
                                        </p:column>
                                        <p:column headerText="#{i18n['empresa.columna']}" styleClass="general"  >
                                            <h:outputText value="#{dto.columna}" styleClass="general"/>
                                        </p:column>
                                        <p:column headerText="#{i18n['empresa.archivo']}" styleClass="general">
                                            <h:outputText value="#{dto.archivoDesc}" styleClass="general"/>
                                        </p:column>
                                        <p:column headerText="#{i18n['empresa.campo.destino']}" styleClass="general" >
                                            <h:outputText value="#{dto.campoDestino}" styleClass="general"/>
                                        </p:column>
                                    </p:dataTable>
                                </h:panelGrid>
                            </p:tab>

                            <p:tab id="tabPago" title="#{i18n['empresa.archivo.pago']}">
                                <h:panelGrid id="pgPago" columns="1">
                                    <p:dataTable id="tblPago" value="#{empresaCobranzaMBean.listaPago}" var="dto" widgetVar="widTable"
                                                 rowKey="#{dto.id}"
                                                 emptyMessage="#{i18n['form.general.mensaje.no.registros']}" styleClass="estiloPanel">
                                        <p:column style="text-align:center;">
                                            <h:panelGrid columns="10" cellspacing="10" styleClass="estiloPanelGrid">
                                                <p:column style="text-align:center;">
                                                    <p:commandButton icon="ui-icon  ui-icon-close" title="#{i18n['general.button.eliminar']}" 
                                                                     rendered="#{sessionMBean.accion != applicationMBean.ver}"
                                                                     ajax="true"
                                                                     update=":frmPrincipal:pnlPrincipalDeta"
                                                                     action="#{empresaCobranzaMBean.eliminarDetalle}">
                                                        <f:setPropertyActionListener value="#{dto}" target="#{empresaCobranzaMBean.detaDto}" /> 
                                                    </p:commandButton>
                                                    <p:commandButton icon="ui-icon ui-icon-search" title="#{i18n['general.button.ver.tip']}"
                                                                     actionListener="#{empresaCobranzaMBean.verDetalle}" ajax="true"
                                                                     oncomplete="carDialogDeta.show()"
                                                                     update=":frmPopupDeta:pgFormDtoDeta">
                                                        <f:setPropertyActionListener value="#{dto}" target="#{empresaCobranzaMBean.detaDto}"/>
                                                    </p:commandButton>
                                                    <p:commandButton id="btnEditar2" icon="ui-icon ui-icon-pencil" title="#{i18n['general.button.editar.tip']}" 
                                                                     rendered="#{sessionMBean.accion != applicationMBean.ver}"
                                                                     update=":frmPopupDeta:pgFormDtoDeta"
                                                                     actionListener="#{empresaCobranzaMBean.editarDetalle}"
                                                                     oncomplete="carDialogDeta.show()" ajax="true">
                                                        <f:setPropertyActionListener value="#{dto}" target="#{empresaCobranzaMBean.detaDto}"/>
                                                    </p:commandButton>
                                                </p:column>
                                            </h:panelGrid>
                                        </p:column>
                                        <p:column headerText="#{i18n['general.label.id']}" styleClass="general">
                                            <h:outputText value="#{dto.id}" styleClass="general"/>
                                        </p:column>
                                        <p:column headerText="#{i18n['empresa.campo']}" styleClass="general">
                                            <h:outputText value="#{dto.campoDto.nombre}" styleClass="general"/>
                                        </p:column>
                                        <p:column headerText="#{i18n['empresa.columna']}" styleClass="general">
                                            <h:outputText value="#{dto.columna}" styleClass="general"/>
                                        </p:column>
                                        <p:column headerText="#{i18n['empresa.archivo']}" styleClass="general">
                                            <h:outputText value="#{dto.archivoDesc}" styleClass="general"/>
                                        </p:column>
                                        <p:column headerText="#{i18n['empresa.campo.destino']}" styleClass="general">
                                            <h:outputText value="#{dto.campoDestino}" styleClass="general"/>
                                        </p:column>
                                    </p:dataTable>
                                </h:panelGrid>
                            </p:tab>
                        </p:tabView>                        
                    </h:panelGrid>
                </p:panel>
            </h:form>
            <p:dialog id="dialogDeta" header="#{i18n['panel.titulo.empresa.cobranza']}" widgetVar="carDialogDeta" resizable="false"  
                      width="450" height="200" modal="true">  
                <p:messages id="msjDialogDeta" showDetail="false" autoUpdate="true"/>
                <ui:include src="/pages/cobranza/empresaCobranza/empresaCobranzaDeta.xhtml" /> 
            </p:dialog>
            <p:dialog id="idDlgBitacoraEntidad" header="#{i18n['bitacora.titulo']}" widgetVar="dlgBitacoraEntidad" resizable="false"
                      width="900" height="200" modal="true">
                <ui:include src="/pages/bitacora/bitacoras.xhtml"/>
            </p:dialog>
        </ui:define>
    </ui:composition>
</html>